#if defined(_MSC_VER)
#pragma once
#endif

#ifndef LM_MATERIAL_PLASTIC_H
#define LM_MATERIAL_PLASTIC_H

#include "../core/material.h"

class Plastic : public Material {
public:
	Plastic(Reference<Texture<Spectrum>> kd, Reference<Texture<Spectrum>> ks,
			Reference<Texture<float>> rough, Reference<Texture<float>> bump) {
		Kd = kd;
		Ks = ks;
		roughness = rough;
		bumpMap = bump;
	}
	BSDF *GetBSDF(const Intersection &isect) const;
	~Plastic() {
		Kd = NULL;
		Ks = NULL;
		roughness = NULL;
		bumpMap = NULL;
	}
private:
	Reference<Texture<Spectrum>> Kd, Ks;
	Reference<Texture<float>> roughness, bumpMap;
};
#endif	// LM_MATERIAL_PLASTIC_H